/*
 * Generated file. 
 * 
 * AuthorProfileView.java
 */
package xsp;

import com.ibm.xsp.page.compiled.AbstractCompiledPage;
import com.ibm.xsp.page.compiled.AbstractCompiledPageDispatcher;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import com.ibm.xsp.page.compiled.NoSuchComponentException;
import com.ibm.xsp.page.compiled.PageExpressionEvaluator;
import java.lang.String;
import java.lang.Object;
import java.lang.Integer;
import com.ibm.xsp.component.UIViewRootEx2;
import java.lang.Boolean;
import com.ibm.xsp.extlib.component.mobile.UIDMHeading;
import javax.faces.el.ValueBinding;
import com.ibm.xsp.component.UIPanelEx;
import java.util.Map;
import com.ibm.xsp.component.xp.XspOutputText;
import com.ibm.xsp.component.UIIncludeComposite;
import com.ibm.xsp.component.UIPassThroughTag;
import com.ibm.xsp.extlib.component.data.UIDataView;
import com.ibm.xsp.extlib.component.data.CategoryColumn;
import com.ibm.xsp.model.domino.DominoViewData;
import com.ibm.xsp.extlib.component.data.SummaryColumn;
import com.ibm.xsp.extlib.component.data.ExtraColumn;
import com.ibm.xsp.convert.DateTimeConverter;
import com.ibm.xsp.component.xp.XspLineBreak;
import com.ibm.xsp.component.xp.XspDiv;
import com.ibm.xsp.component.xp.XspOutputLabel;
import com.ibm.xsp.component.xp.XspPager;
import com.ibm.xsp.component.xp.XspOutputLink;
import com.ibm.xsp.component.xp.XspEventHandler;
import com.ibm.xsp.extlib.actions.client.data.DataIteratorAddRows;

@SuppressWarnings("all")
public class AuthorProfileView extends AbstractCompiledPageDispatcher{
    
    public AuthorProfileView() {
        super("8.5.2"); // version of xe:dataView binding
    }

    protected AbstractCompiledPage createPage(int pageIndex) {
        return new AuthorProfileViewPage();
    }
    
    protected boolean isCustomControl() {
        return true;
    }

    public static class AuthorProfileViewPage extends AbstractCompiledPage {
        
        private static final ComponentInfo[] s_infos = new ComponentInfo[]{
            ComponentInfo.EMPTY_NORMAL, // 0 "djxmheading3"
            ComponentInfo.EMPTY_NORMAL, // 1 "cfauthorprofiletitle"
            new ComponentInfo(false, new int[]{1}), // 2 panel
            ComponentInfo.EMPTY_NORMAL, // 3 "authorviewheader"
            ComponentInfo.EMPTY_MARKUP, // 4 br
            ComponentInfo.EMPTY_NORMAL, // 5 br2
            ComponentInfo.EMPTY_NORMAL, // 6 label
            new ComponentInfo(false, new int[]{6}), // 7 div
            new ComponentInfo(false, new int[]{5, 7}), // 8 panel2
            ComponentInfo.EMPTY_NORMAL, // 9 "pager4"
            new ComponentInfo(false, new int[]{9}), // 10 panel3
            ComponentInfo.EMPTY_NORMAL, // 11 "label24"
            new ComponentInfo(false, new int[]{11}), // 12 "panel19"
            ComponentInfo.EMPTY_NORMAL, // 13 eventHandler
            new ComponentInfo(false, new int[]{13}), // 14 "link1"
            ComponentInfo.EMPTY_NORMAL, // 15 "pager1"
            new ComponentInfo(false, null, // 16 "dataview6"
              new Object[][]{
                new Object[]{"noRows", Integer.valueOf(8)},
                new Object[]{"pagerTopRight", Integer.valueOf(10)},
                new Object[]{"header", Integer.valueOf(12)},
                new Object[]{"pagerBottom", Integer.valueOf(14)},
                new Object[]{"pagerBottomRight", Integer.valueOf(15)},
              } ),
            ComponentInfo.EMPTY_MARKUP, // 17 br3
            ComponentInfo.EMPTY_MARKUP, // 18 br4
            ComponentInfo.EMPTY_NORMAL, // 19 br5
            ComponentInfo.EMPTY_NORMAL, // 20 label2
            new ComponentInfo(false, new int[]{20}), // 21 div2
            new ComponentInfo(false, new int[]{19, 21}), // 22 panel4
            ComponentInfo.EMPTY_NORMAL, // 23 "pager3"
            new ComponentInfo(false, new int[]{23}), // 24 panel5
            ComponentInfo.EMPTY_NORMAL, // 25 "label23"
            new ComponentInfo(false, new int[]{25}), // 26 "panel18"
            ComponentInfo.EMPTY_NORMAL, // 27 eventHandler2
            new ComponentInfo(false, new int[]{27}), // 28 "link6"
            ComponentInfo.EMPTY_NORMAL, // 29 "pager2"
            new ComponentInfo(false, null, // 30 "dataview7"
              new Object[][]{
                new Object[]{"noRows", Integer.valueOf(22)},
                new Object[]{"pagerTopRight", Integer.valueOf(24)},
                new Object[]{"header", Integer.valueOf(26)},
                new Object[]{"pagerBottom", Integer.valueOf(28)},
                new Object[]{"pagerBottomRight", Integer.valueOf(29)},
              } ),
            new ComponentInfo(false, new int[]{0, 2, 3, 4, 16, 17, 18, 30}), // 31 view
        };
        
        public AuthorProfileViewPage() {
            super(31, s_infos );
        }
        
        public int getComponentForId(String id) throws NoSuchComponentException { 
            if( "djxmheading3".equals(id) )
                return 0;
            if( "cfauthorprofiletitle".equals(id) )
                return 1;
            if( "authorviewheader".equals(id) )
                return 3;
            if( "dataview6".equals(id) )
                return 16;
            if( "pager4".equals(id) )
                return 9;
            if( "panel19".equals(id) )
                return 12;
            if( "label24".equals(id) )
                return 11;
            if( "link1".equals(id) )
                return 14;
            if( "pager1".equals(id) )
                return 15;
            if( "dataview7".equals(id) )
                return 30;
            if( "pager3".equals(id) )
                return 23;
            if( "panel18".equals(id) )
                return 26;
            if( "label23".equals(id) )
                return 25;
            if( "link6".equals(id) )
                return 28;
            if( "pager2".equals(id) )
                return 29;
            return -1;
        }
        
        public UIComponent createComponent(int id, FacesContext context,
                UIComponent parent, PageExpressionEvaluator evaluator)
                throws NoSuchComponentException { 
            switch (id) {
            case 31:
                return createView(context, parent, evaluator);
            case 0:
                return createDjxmheading3(context, parent, evaluator);
            case 2:
                return createPanel(context, parent, evaluator);
            case 1:
                return createCfauthorprofiletitle(context, parent, evaluator);
            case 3:
                return createAuthorviewheader(context, parent, evaluator);
            case 4:
                return createBr(context, parent, evaluator);
            case 16:
                return createDataview6(context, parent, evaluator);
            case 8:
                return createPanel2(context, parent, evaluator);
            case 5:
                return createBr2(context, parent, evaluator);
            case 7:
                return createDiv(context, parent, evaluator);
            case 6:
                return createLabel(context, parent, evaluator);
            case 10:
                return createPanel3(context, parent, evaluator);
            case 9:
                return createPager4(context, parent, evaluator);
            case 12:
                return createPanel19(context, parent, evaluator);
            case 11:
                return createLabel24(context, parent, evaluator);
            case 14:
                return createLink1(context, parent, evaluator);
            case 13:
                return createEventHandler(context, parent, evaluator);
            case 15:
                return createPager1(context, parent, evaluator);
            case 17:
                return createBr3(context, parent, evaluator);
            case 18:
                return createBr4(context, parent, evaluator);
            case 30:
                return createDataview7(context, parent, evaluator);
            case 22:
                return createPanel4(context, parent, evaluator);
            case 19:
                return createBr5(context, parent, evaluator);
            case 21:
                return createDiv2(context, parent, evaluator);
            case 20:
                return createLabel2(context, parent, evaluator);
            case 24:
                return createPanel5(context, parent, evaluator);
            case 23:
                return createPager3(context, parent, evaluator);
            case 26:
                return createPanel18(context, parent, evaluator);
            case 25:
                return createLabel23(context, parent, evaluator);
            case 28:
                return createLink6(context, parent, evaluator);
            case 27:
                return createEventHandler2(context, parent, evaluator);
            case 29:
                return createPager2(context, parent, evaluator);
            }
            throw new NoSuchComponentException(id);
        }
        
        private UIComponent createView(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIViewRootEx2 result = new UIViewRootEx2();
            initViewRoot(result);
            return result;
        }

        private UIComponent createDjxmheading3(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:isMobile()}";
            String sourceId = "djxmHeading3/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            UIDMHeading result = new UIDMHeading();
            result.setLabel("Author");
            result.setBack("Back");
            setId(result, "djxmHeading3");
            String sourceId2 = "djxmHeading3/xp:this.moveTo[1]/text()";
            String moveToExpr = "#{javascript:\n\t\t\t\tif(null == sessionScope.from)\n\t\t\t\t\treturn \"allDocs\";\n\t\t\t\telse\t\n\t\t\t\t\treturn sessionScope.from;\n\t\t\t}";
            ValueBinding moveTo = evaluator.createValueBinding(result, moveToExpr, sourceId2,String.class);
            result.setValueBinding("moveTo", moveTo);
            return result;
        }

        private UIComponent createPanel(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:!isMobile()}";
            String sourceId = "/xp:view[1]/xp:panel[1]/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            UIPanelEx result = new UIPanelEx();
            Map<String,Object> attrs = getAttributes(result);
            attrs.put("themeId", "Panel.header");
            return result;
        }

        private UIComponent createCfauthorprofiletitle(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspOutputText result = new XspOutputText();
            String sourceId = "cfAuthorProfileTitle/xp:this.value[1]/text()";
            String valueExpr = "#{javascript:var cc\t\t= getComponent(\"authorViewHeader\").getPropertyMap();\n\t\t\t\tvar name\t= cc.getProperty(\"name\");\n\t\t\t\tvar format\t= res.getString(\"authorprofile.title\");\n\t\t\t\t\n\t\t\t\tif (name == null) {\n\t\t\t\t\tname = cc.getProperty(\"nameAbbreviated\");\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tI18n.format(format, name);}";
            ValueBinding value = evaluator.createValueBinding(result, valueExpr, sourceId,Object.class);
            result.setValueBinding("value", value);
            result.setEscape(true);
            Map<String,Object> attrs = getAttributes(result);
            attrs.put("themeId", "ComputedField.header.subtitle");
            setId(result, "cfAuthorProfileTitle");
            return result;
        }

        private UIComponent createAuthorviewheader(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            String resultPage = "/authorProfileHeader.xsp";
            UIIncludeComposite result = new UIIncludeComposite();
            result.setPageDriver(getPageParam().getPageDriver());
            result.setPageName(resultPage);
            setId(result, "authorViewHeader");
            return result;
        }

        private UIComponent createBr(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPassThroughTag component = new UIPassThroughTag();
            component.setTag("br");
            return component;
        }

        private UIComponent createDataview6(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            String bindingExpr = "#{viewStateBean.dataIterator}";
            ValueBinding binding = evaluator.createValueBinding(null, bindingExpr, null, UIComponent.class);
            Object bound = binding.getValue(context);
            if( binding.isReadOnly(context) ){
                binding = null;
            }
            if( bound instanceof UIComponent ){
                UIComponent computedResult = (UIComponent) bound;
                if( null != binding ){
                    initBindingProperty(context, binding, computedResult);
                }
                return computedResult;
            }
            UIDataView result = new UIDataView();
            result.setColumnTitles(true);
            result.setCollapsibleRows(true);
            CategoryColumn categoryColumn = new CategoryColumn();
            categoryColumn.setComponent(result);
            categoryColumn.setColumnName(" ");
            result.addCategoryColumn(categoryColumn);
            result.setVar("rows");
            String sourceId = "dataView6/xp:this.rows[1]/text()";
            String rowsExpr = "#{javascript:\n\t\t\tif(isMobile())\n\t\t\t{\n\t\t\t\treturn \"10\";\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\treturn \"25\";\n\t\t\t}\n\t\t}";
            ValueBinding rows = evaluator.createValueBinding(result, rowsExpr, sourceId,int.class);
            result.setValueBinding("rows", rows);
            DominoViewData data = new DominoViewData();
            data.setComponent(result);
            data.setViewName("xpAuthorPosts");
            String sourceId2 = "dataView6/xe:this.data[1]/xp:dominoView[1]/xp:this.categoryFilter[1]/text()";
            String categoryFilterExpr = "#{javascript:\n\t\t\t\t\tvar cc = getComponent(\"authorViewHeader\").getPropertyMap();\n\t\t\t\t\tcc.getProperty(\"categoryFilterMain\");\n\t\t\t\t}";
            ValueBinding categoryFilter = evaluator.createValueBinding(result, categoryFilterExpr, sourceId2,String.class);
            data.setValueBinding("categoryFilter", categoryFilter);
            data.setVar("dominoView");
            data.setDataCache("full");
            result.setData(data);
            String sourceId3 = "dataView6/xp:this.pageName[1]/text()";
            String pageNameExpr = "#{javascript:\n\t\t\t\tif(isMobile())\n\t\t\t\t{\n\t\t\t\t\treturn \"document\";\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\treturn \"topicThread.xsp\";\n\t\t\t\t}\n\t\t\t}";
            ValueBinding pageName = evaluator.createValueBinding(result, pageNameExpr, sourceId3,String.class);
            result.setValueBinding("pageName", pageName);
            setId(result, "dataView6");
            result.setCollapsibleDetail(true);
            SummaryColumn summaryColumn = new SummaryColumn();
            summaryColumn.setComponent(result);
            String sourceId4 = "dataView6/xe:this.summaryColumn[1]/xe:viewSummaryColumn[1]/xe:this.value[1]/text()";
            String valueExpr = "#{javascript:\n\t\t\t\t\tvar doc = rows.getDocument();\n\t\t\t\t\tvar readers = doc.getItemValueString(\"readers\") != \"\";\n\t\t\t\t\tvar expire = doc.getItemValueString(\"expire\") != \"\";\n\t\t\t\t\t\n\t\t\t\t\tvar prefix = \"\";\n\t\t\t\t\tif(readers)\n\t\t\t\t\t{\n\t\t\t\t\t\tprefix = res.getString(\"private\");\n\t\t\t\t\t}\n\t\t\t\t\telse if(expire)\n\t\t\t\t\t{\n\t\t\t\t\t\tprefix = res.getString(\"expired\");\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tprefix + rows.getColumnValue(\"Topic\");\n\t\t\t\t}";
            ValueBinding value = evaluator.createValueBinding(result, valueExpr, sourceId4,Object.class);
            summaryColumn.setValueBinding("value", value);
            result.setSummaryColumn(summaryColumn);
            ExtraColumn extraColumns = new ExtraColumn();
            extraColumns.setComponent(result);
            DateTimeConverter converter = new DateTimeConverter();
            converter.setType("date");
            extraColumns.setConverter(converter);
            extraColumns.setColumnName("Date");
            String sourceId5 = "dataView6/xe:this.extraColumns[1]/xe:viewExtraColumn[1]/xp:this.styleClass[1]/text()";
            String styleClassExpr = "#{javascript:\n\t\t\t\t\tif(isMobile())\n\t\t\t\t\t\treturn \"xlExtraColumn\";\n\t\t\t\t}";
            ValueBinding styleClass = evaluator.createValueBinding(result, styleClassExpr, sourceId5,String.class);
            extraColumns.setValueBinding("styleClass", styleClass);
            result.addExtraColumn(extraColumns);
            if (null != binding) {
                initBindingProperty(context, binding, result);
            }
            return result;
        }

        private UIComponent createPanel2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPanelEx result = new UIPanelEx();
            return result;
        }

        private UIComponent createBr2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspLineBreak result = new XspLineBreak();
            return result;
        }

        private UIComponent createDiv(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspDiv result = new XspDiv();
            result.setStyleClass("xlEmptyFacet");
            return result;
        }

        private UIComponent createLabel(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspOutputLabel result = new XspOutputLabel();
            String sourceId = "dataView6/xp:this.facets[2]/xp:panel[2]/xp:div[1]/xp:label[1]/@value";
            String valueExpr = "#{javascript: res.getString(\'no_documents_found\')}";
            ValueBinding value = evaluator.createValueBinding(result, valueExpr, sourceId,Object.class);
            result.setValueBinding("value", value);
            return result;
        }

        private UIComponent createPanel3(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:!isMobile()}";
            String sourceId = "dataView6/xp:this.facets[2]/xp:panel[1]/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            UIPanelEx result = new UIPanelEx();
            result.setStyleClass("panelPagerTopRight");
            return result;
        }

        private UIComponent createPager4(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspPager result = new XspPager();
            result.setStyleClass("pager");
            result.setFor("dataView6");
            result.setPartialRefresh(true);
            result.setLayout("Previous Group Next");
            setId(result, "pager4");
            return result;
        }

        private UIComponent createPanel19(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPanelEx result = new UIPanelEx();
            setId(result, "panel19");
            return result;
        }

        private UIComponent createLabel24(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspOutputLabel result = new XspOutputLabel();
            result.setValue("Recent topics");
            result.setStyleClass("xlAuthorProfileViewHeader");
            setId(result, "label24");
            return result;
        }

        private UIComponent createLink1(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:isMobile()}";
            String sourceId = "link1/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            XspOutputLink result = new XspOutputLink();
            result.setEscape(true);
            String sourceId2 = "link1/xp:this.rendered[1]/text()";
            String renderedExpr = "#{javascript:\n\t\t\t\t\tvar dv = getComponent(\"dataView6\");\n\t\t\t\t\tif(dv.getRowCount() > 5)\n\t\t\t\t\t\treturn true;\n\t\t\t\t\telse\n\t\t\t\t\t\treturn false;}";
            ValueBinding rendered = evaluator.createValueBinding(result, renderedExpr, sourceId2,boolean.class);
            result.setValueBinding("rendered", rendered);
            setId(result, "link1");
            result.setText("More...");
            return result;
        }

        private UIComponent createEventHandler(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspEventHandler result = new XspEventHandler();
            result.setSubmit(false);
            result.setEvent("onclick");
            DataIteratorAddRows script = new DataIteratorAddRows();
            script.setComponent(result);
            script.setDisableId("link1");
            script.setRowCount(5);
            script.setFor("dataView6");
            script.setSourceReferenceId("link1/xp:eventHandler[1]/xp:this.script[1]/xe:addRows[1]");
            result.setScript(script);
            return result;
        }

        private UIComponent createPager1(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:!isMobile()}";
            String sourceId = "pager1/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            XspPager result = new XspPager();
            result.setStyleClass("pager");
            result.setFor("dataView6");
            result.setPartialRefresh(true);
            result.setLayout("Previous Group Next");
            setId(result, "pager1");
            return result;
        }

        private UIComponent createBr3(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPassThroughTag component = new UIPassThroughTag();
            component.setTag("br");
            return component;
        }

        private UIComponent createBr4(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPassThroughTag component = new UIPassThroughTag();
            component.setTag("br");
            return component;
        }

        private UIComponent createDataview7(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            String bindingExpr = "#{viewStateBean.dataIterator}";
            ValueBinding binding = evaluator.createValueBinding(null, bindingExpr, null, UIComponent.class);
            Object bound = binding.getValue(context);
            if( binding.isReadOnly(context) ){
                binding = null;
            }
            if( bound instanceof UIComponent ){
                UIComponent computedResult = (UIComponent) bound;
                if( null != binding ){
                    initBindingProperty(context, binding, computedResult);
                }
                return computedResult;
            }
            UIDataView result = new UIDataView();
            result.setColumnTitles(true);
            result.setCollapsibleRows(true);
            CategoryColumn categoryColumn = new CategoryColumn();
            categoryColumn.setComponent(result);
            categoryColumn.setColumnName(" ");
            result.addCategoryColumn(categoryColumn);
            result.setVar("rows");
            String sourceId = "dataView7/xp:this.rows[1]/text()";
            String rowsExpr = "#{javascript:\n\t\t\tif(isMobile())\n\t\t\t{\n\t\t\t\treturn \"10\";\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\treturn \"25\";\n\t\t\t}\n\t\t}";
            ValueBinding rows = evaluator.createValueBinding(result, rowsExpr, sourceId,int.class);
            result.setValueBinding("rows", rows);
            DominoViewData data = new DominoViewData();
            data.setComponent(result);
            data.setViewName("xpAuthorPosts");
            String sourceId2 = "dataView7/xe:this.data[1]/xp:dominoView[1]/xp:this.categoryFilter[1]/text()";
            String categoryFilterExpr = "#{javascript:\n\t\t\t\t\tvar cc = getComponent(\"authorViewHeader\").getPropertyMap();\n\t\t\t\t\tcc.getProperty(\"categoryFilterResponses\");\n\t\t\t\t}";
            ValueBinding categoryFilter = evaluator.createValueBinding(result, categoryFilterExpr, sourceId2,String.class);
            data.setValueBinding("categoryFilter", categoryFilter);
            data.setVar("dominoView2");
            data.setDataCache("full");
            result.setData(data);
            String sourceId3 = "dataView7/xp:this.pageName[1]/text()";
            String pageNameExpr = "#{javascript:\n\t\t\t\tif(isMobile())\n\t\t\t\t{\n\t\t\t\t\treturn \"document\";\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\treturn \"topicThread.xsp\";\n\t\t\t\t}\n\t\t\t}";
            ValueBinding pageName = evaluator.createValueBinding(result, pageNameExpr, sourceId3,String.class);
            result.setValueBinding("pageName", pageName);
            setId(result, "dataView7");
            result.setCollapsibleDetail(true);
            SummaryColumn summaryColumn = new SummaryColumn();
            summaryColumn.setComponent(result);
            String sourceId4 = "dataView7/xe:this.summaryColumn[1]/xe:viewSummaryColumn[1]/xe:this.value[1]/text()";
            String valueExpr = "#{javascript:\n\t\t\t\t\tvar doc = rows.getDocument();\n\t\t\t\t\tvar readers = doc.getItemValueString(\"readers\") != \"\";\n\t\t\t\t\tvar expire = doc.getItemValueString(\"expire\") != \"\";\n\t\t\t\t\t\n\t\t\t\t\tvar prefix = \"\";\n\t\t\t\t\tif(readers)\n\t\t\t\t\t{\n\t\t\t\t\t\tprefix = res.getString(\"private\");\n\t\t\t\t\t}\n\t\t\t\t\telse if(expire)\n\t\t\t\t\t{\n\t\t\t\t\t\tprefix = res.getString(\"expired\");\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\treturn  prefix + rows.getColumnValue(\"Topic\") + \" (\"+res.getString(\"byauthor.re\")+\": \" + rows.getColumnValue(\"OriginalSubject\") + \")\";\n\t\t\t\t}";
            ValueBinding value = evaluator.createValueBinding(result, valueExpr, sourceId4,Object.class);
            summaryColumn.setValueBinding("value", value);
            result.setSummaryColumn(summaryColumn);
            ExtraColumn extraColumns = new ExtraColumn();
            extraColumns.setComponent(result);
            DateTimeConverter converter = new DateTimeConverter();
            converter.setType("date");
            extraColumns.setConverter(converter);
            extraColumns.setColumnName("Date");
            String sourceId5 = "dataView7/xe:this.extraColumns[1]/xe:viewExtraColumn[1]/xp:this.styleClass[1]/text()";
            String styleClassExpr = "#{javascript:\n\t\t\t\t\tif(isMobile())\n\t\t\t\t\t\treturn \"xlExtraColumn\";\n\t\t\t\t}";
            ValueBinding styleClass = evaluator.createValueBinding(result, styleClassExpr, sourceId5,String.class);
            extraColumns.setValueBinding("styleClass", styleClass);
            result.addExtraColumn(extraColumns);
            if (null != binding) {
                initBindingProperty(context, binding, result);
            }
            return result;
        }

        private UIComponent createPanel4(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPanelEx result = new UIPanelEx();
            return result;
        }

        private UIComponent createBr5(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspLineBreak result = new XspLineBreak();
            return result;
        }

        private UIComponent createDiv2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspDiv result = new XspDiv();
            result.setStyleClass("xlEmptyFacet");
            return result;
        }

        private UIComponent createLabel2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspOutputLabel result = new XspOutputLabel();
            String sourceId = "dataView7/xp:this.facets[2]/xp:panel[1]/xp:div[1]/xp:label[1]/@value";
            String valueExpr = "#{javascript: res.getString(\'no_documents_found\')}";
            ValueBinding value = evaluator.createValueBinding(result, valueExpr, sourceId,Object.class);
            result.setValueBinding("value", value);
            return result;
        }

        private UIComponent createPanel5(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:!isMobile()}";
            String sourceId = "dataView7/xp:this.facets[1]/xp:panel[1]/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            UIPanelEx result = new UIPanelEx();
            result.setStyleClass("panelPagerTopRight");
            return result;
        }

        private UIComponent createPager3(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspPager result = new XspPager();
            result.setStyleClass("pager");
            result.setFor("dataView7");
            result.setPartialRefresh(true);
            result.setLayout("Previous Group Next");
            setId(result, "pager3");
            return result;
        }

        private UIComponent createPanel18(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            UIPanelEx result = new UIPanelEx();
            setId(result, "panel18");
            return result;
        }

        private UIComponent createLabel23(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspOutputLabel result = new XspOutputLabel();
            result.setValue("Recent responses");
            result.setStyleClass("xlAuthorProfileViewHeader");
            setId(result, "label23");
            return result;
        }

        private UIComponent createLink6(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:isMobile()}";
            String sourceId = "link6/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            XspOutputLink result = new XspOutputLink();
            result.setEscape(true);
            String sourceId2 = "link6/xp:this.rendered[1]/text()";
            String renderedExpr = "#{javascript:\n\t\t\t\t\tvar dv = getComponent(\"dataView7\");\n\t\t\t\t\tif(dv.getRowCount() > 5)\n\t\t\t\t\t\treturn true;\n\t\t\t\t\telse\n\t\t\t\t\t\treturn false;}";
            ValueBinding rendered = evaluator.createValueBinding(result, renderedExpr, sourceId2,boolean.class);
            result.setValueBinding("rendered", rendered);
            setId(result, "link6");
            result.setText("More...");
            return result;
        }

        private UIComponent createEventHandler2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            XspEventHandler result = new XspEventHandler();
            result.setSubmit(false);
            result.setEvent("onclick");
            DataIteratorAddRows script = new DataIteratorAddRows();
            script.setComponent(result);
            script.setDisableId("link6");
            script.setRowCount(5);
            script.setFor("dataView7");
            script.setSourceReferenceId("link6/xp:eventHandler[1]/xp:this.script[1]/xe:addRows[1]");
            result.setScript(script);
            return result;
        }

        private UIComponent createPager2(FacesContext context, 
                UIComponent parent, PageExpressionEvaluator evaluator) {
            // loaded=??
            String loadedBnd = "#{javascript:!isMobile()}";
            String sourceId = "pager2/@loaded";
            String loaded = evaluator.evaluateAsString(null, loadedBnd, sourceId, boolean.class);
            if ( null != loaded && loaded.length() > 0 &&
                    ! Boolean.parseBoolean(loaded) ) {
                return null;
            } // else loaded was true
            XspPager result = new XspPager();
            result.setStyleClass("pager");
            result.setFor("dataView7");
            result.setPartialRefresh(true);
            result.setLayout("Previous Group Next");
            setId(result, "pager2");
            return result;
        }

    }
}
